package cn.springsoter.core.tool.api;

import java.io.Serializable;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 单个字段排序用：field和sort
 * 多个字段排序用：fields和sorts，但是数组内的值必须一一对应
 * 
 * @author kevin
 */
@Data
@Schema(description = "分页查询对象")
public class QueryRequest implements Serializable {

    private static final long serialVersionUID = -4869594085374385813L;
    /**
     * 搜索关键字
     */
    @Schema(description = "搜索关键字")
    private String search;
    /**
     *  当前页面数据量
     */
    @Schema(description = "当前页面数据量", required = true)
    private int size = 10;
    /**
     *  当前页码
     */
    @Schema(description = "当前页码", required = true)
    private int page = 1;
    /**
     *  排序字段名（DTO的字段名）
     */
    @Schema(description = "排序字段")
    private String field;
    /**
     *  排序规则，asc升序，desc降序
     */
    @Schema(description = "排序规则，asc升序，desc降序")
    private String sort;
    /**
     *  多个排序字段（每个字段要和下面的排序规则一一对应）
     */
    @Schema(description = "多个排序字段（每个字段要和下面的排序规则一一对应）")
    private String[] fields;
    /**
     *  多个排序规则，asc升序，desc降序
     */
    @Schema(description = "多个排序规则，asc升序，desc降序")
    private String[] sorts;
    
    
}
